// noetige Klassen/Pakete laden, um Zufallszahlen nutzen zu koennen
import java.util.*;

/**
 * main-Funktion zum Testen der Klassen, Instanzen und Methoden
 * @author Torboern Klatt
 */
public class RoboterTest {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // Zufallszahlen bereitstellen
        Random r = new Random();

        //*******************************
        // Roboter erzeugen
        Roboter rob1 = new Roboter("rob1",r.nextInt(2000));
        
        // Methoden der Klasse Roboter testen
        System.out.println(rob1.toString()+"\n\tHashcode: "+rob1.hashCode());
        rob1.switchOn();
        System.out.println(rob1.toString()+"\n\tHashcode: "+rob1.hashCode());
        
        //*******************************
        // MobileRoboter erzeugen
        MobileRoboter mob1 = new MobileRoboter("mob1",rob1.getBaujahr(),r.nextInt(10)+5,r.nextInt(10)+5,r.nextInt(10)+5);
        
        // Methoden der Klasse MobileRoboter testen
        System.out.println(mob1.toString()+"\n\tHashcode: "+mob1.hashCode());
        mob1.switchOn();
        mob1.setTempo_current(r.nextInt(5)+1);
        mob1.vollTanken();
        System.out.println(mob1.toString()+"\n\tHashcode: "+mob1.hashCode());
        mob1.moveForDistance(r.nextInt(5)+1);
        mob1.vollTanken();
        mob1.setTempo_current(r.nextInt(5)+1);
        mob1.switchOn();
        mob1.moveForHours(r.nextInt(5)+1);
        System.out.println(mob1.toString()+"\n\tHashcode: "+mob1.hashCode());

        //*******************************
        // Ereignisse erzeugen
        Event h1 = new Event();
        
        // Methoder der Klasse Event testen
        System.out.println(h1.toString());
        h1.activate();
        System.out.println(h1.toString());
    }
}
